package com.bdqn.boot.yuanshen.service;

import com.bdqn.boot.yuanshen.bean.Users;
import com.github.pagehelper.PageInfo;
import org.apache.ibatis.annotations.Param;

/**
 * @author fly
 * @version 1.0
 * @className UsersService
 * @description TODO
 * @date 2025/3/12 08:57
 */
public interface UsersService {
    /**
     * 添加方法
     * @param users
     * @return
     */
    void addUsers(Users users);

    /**
     * 删除方法
     * @param id
     * @return
     */
    void deleteUser(@Param("id") Integer id);

    /**
     * 修改方法
     * @param users
     * @return
     */

    void updateUser(Users users);

    /**
     * 分页查询所有用户
     * @param pageNum 页码
     * @param pageSize 每页数量
     * @return 包含用户信息的分页对象
     */
    PageInfo<Users> getUsers(int pageNum, int pageSize);

    /**
     * 用户名模糊分页查询
     * @param username 用户名
     * @param pageNum 页码
     * @param pageSize 每页数量
     * @return 包含符合条件用户信息的分页对象
     */
    PageInfo<Users> getUsers(String username,int pageNum, int pageSize);

    Users getUser(@Param("id") Integer id);
    Users login(String username, String password);

    Users getUserById(Integer userId);
}
